Network operators want to apply service functions to network traffic using commodity hardware or virtual machines. These solutions may be preferable over purpose-built hardware for a variety of reasons. Service functions provide complex capabilities such as, but not limited to:                i. Aggregate measurements about application usage        ii. Quality-of-service indicators        iii. Subscriber metering and quota        iv. Attack detection        v. Traffic shaping and reprioritization        vi. Firewall polices        
Network operators often want to deploy a quantity of functions as required, according to network demand, rather than deploying purpose-built hardware scaled for the worst case, which has been a conventional solution.
The Service Function Chaining (SFC) Architecture (see for example RFC7665) provides a model for forwarding traffic to service functions, but does not address certain problems, for example:                i. How should failures be automatically detected?        ii. What actions should be taken automatically when a failure is detected?        iii. Precisely how should traffic be load-balanced to multiple equivalent functions?        iv. How can functions automatically learn about attached forwarders?        v. How can line-rate traffic be handled by functions that have a capacity below line rate?        vi. How can traffic from multiple redundant network links utilize the same functions, being load-balanced in a consistent manner?        vii. How should traffic be forwarded after the service chain is complete?        
Therefore, there is a need to address at least some of these issues with a system and method for traffic steering and traffic analysis.
The above information is presented as background information only to assist with an understanding of the present disclosure. No determination has been made, and no assertion is made, as to whether any of the above might be applicable as prior art with regard to the present disclosure.